Communication system, mobile terminal, method of controlling the mobile terminal, and storage medium

ABSTRACT

A communication system comprising an information processing apparatus and a mobile terminal, wherein when the mobile terminal receives a packet transmitted from the information processing apparatus, it determines whether or not a login condition for transmitting a login request is satisfied based on a received signal strength of the packet, and it transmits the login request to the information processing apparatus in a case where it determines that the login condition is satisfied, and does not transmit the login request to the information processing apparatus in a case where it is determines that the login condition is not satisfied.

TECHNICAL FIELD

The present invention relates to a communication system, a mobileterminal, a method of controlling the same, and a storage medium.

BACKGROUND ART

When logging into a conventional multi-function peripheral, a user logsin after authenticating by causing the user's IC card to be read into acard reader connected to the multi-function peripheral (refer to, forexample, Japanese Patent Laid-Open No. 2011-227760).

When using a conventional IC card to log in, effort to hold up the ICcard to the card reader occurs. In addition, after holding up the ICcard to the card reader, there are cases in which it takes time untilthe authentication of the user completes, and thus it takes time untilthe user logs in.

SUMMARY OF INVENTION

An aspect of the present invention is to eliminate the above-mentionedproblems with the conventional techniques.

A feature of the present invention is the provision of a technique withwhich it is possible for a user to receive a service of an informationprocessing apparatus simply by the user holding a mobile terminal andapproaching the information processing apparatus, and which reduces awaiting time required for authentication of the user to improveconvenience for the user.

According to a first aspect of the present invention, there is provideda communication system including an information processing apparatus anda mobile terminal,

-   -   wherein the information processing apparatus comprising:    -   first transmission means for transmitting a packet; and    -   processing means for executing login processing, and    -   wherein the mobile terminal comprising:    -   reception means for receiving the packet;    -   first determination means for determining, in a case where the        reception means receives the packet, whether or not a login        condition for transmitting a login request is satisfied based on        a received signal strength of the packet; and    -   second transmission means for transmitting the login request to        the information processing apparatus in a case where it is        determined by the first determination means that the login        condition is satisfied, and not transmitting the login request        to the information processing apparatus in a case where it is        determined by the first determination means that the login        condition is not satisfied.

According to a second aspect of the present invention, there is provideda mobile terminal capable of transmitting a login request to aninformation processing apparatus, the mobile terminal comprising:

-   -   reception means for receiving a packet that the information        processing apparatus transmits;    -   first determination means for determining, in a case where the        reception means receives the packet, whether or not a login        condition for transmitting a login request is satisfied based on        a received signal strength of the packet; and    -   transmission means for transmitting the login request to the        information processing apparatus in a case where it is        determined by the first determination means that the login        condition is satisfied, and not transmitting the login request        to the information processing apparatus in a case where it is        determined by the first determination means that the login        condition is not satisfied.

According to a third aspect of the present invention, there is provideda method of controlling a mobile terminal that receives a packettransmitted from an information processing apparatus, the methodcomprising:

-   -   a first determination step of determining, in a case where the        mobile terminal receives the packet, whether or not a login        condition for transmitting a login request is satisfied based on        a received signal strength of the packet; and    -   a first control step of controlling the mobile terminal so as to        transmit the login request to the information processing        apparatus in a case where it is determined in the first        determination step that the login condition is satisfied,    -   wherein the mobile terminal is controlled so as to not transmit        the login request to the information processing apparatus in a        case w here it is determined in the first determination step        that the login condition is not satisfied.

Further features of the present invention will become apparent from thefollowing description of exemplary embodiments with reference to theattached drawings.

BRIEF DESCRIPTION OF DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate embodiments of the invention and,together with the description, serve to explain the principles of theinvention.

FIG. 1 depicts a view for illustrating an example configuration of acommunication system according to a first embodiment of the presentinvention.

FIG. 2 is a block diagram for explaining a hardware configuration of amobile terminal and an MFP according to the first embodiment.

FIG. 3A is a block diagram for explaining a software configuration ofthe MFP according to the first embodiment.

FIG. 3B is a block diagram for explaining a software configuration ofthe mobile terminal according to the first embodiment.

FIG. 4 depicts a view explaining screen transitions in accordance withlogin and logout, and an example of a screen that is displayed on aconsole unit of the MFP according to the first embodiment.

FIG. 5 depicts a view for describing an example of a Bluetooth serviceprovided by the MFP according to the first embodiment.

FIG. 6 is a flowchart for describing basic operation of the mobileterminal according to the first embodiment.

FIG. 7 is a flowchart for describing details of MFP usage processing ofstep S608 of FIG. 6 .

FIG. 8 depicts a view showing a UI of the mobile terminal that presentsa substitution function to a user.

FIG. 9 is a flowchart for describing details of processing for using asubstitution function of step S710 of FIG. 7 .

FIG. 10 is a flowchart for describing details of MFP usage terminationprocessing of step S611 of FIG. 6 .

FIG. 11 is a flowchart for describing operation of local loginprocessing in the MFP according to the first embodiment.

FIG. 12 is a flowchart for describing operation of logout processing inthe MFP according to the first embodiment.

FIG. 13 is a flowchart for describing operation in a case in which theMFP has received a login request from the mobile terminal.

FIG. 14A depicts a view explaining example states of the mobile terminaland the MFP according to the first embodiment of the present invention.

FIG. 14B depicts a view explaining example states of the mobile terminaland the MFP according to the first embodiment of the present invention.

FIG. 14C depicts a view explaining example states of the mobile terminaland the MFP according to the first embodiment of the present invention.

FIG. 14D depicts a view explaining example states of the mobile terminaland the MFP according to the first embodiment of the present invention.

FIG. 15 depicts a view for describing characteristic and a userauthentication service according to Bluetooth, provided by the MFPaccording to a second embodiment of the present invention.

FIG. 16 depicts a view for describing a sequence for when the mobileterminal performs a login request to the MFP according to the secondembodiment.

FIG. 17 is a flowchart for describing manual logout processing by theMFP according to a third embodiment.

FIG. 18A depicts a view for describing characteristics provided by auser authentication service of the MFP according to a fourth embodimentof the present invention.

FIG. 18B depicts a view for describing characteristics provided by auser authentication service of the MFP according to the fourthembodiment of the present invention.

FIG. 19 is a flowchart for describing detail of processing of step S608of FIG. 6 in the fourth embodiment.

FIG. 20A is a flowchart for describing operation of local loginprocessing in the MFP according to the fourth embodiment.

FIG. 20B is a flowchart for describing operation of local loginprocessing in the MFP according to the fourth embodiment.

FIG. 21 is a block diagram for explaining a hardware configuration ofthe MFP according to a fifth embodiment of the present invention.

FIG. 22A is a flowchart for describing processing from allowing a userof the mobile terminal to login upon a signal from the mobile terminalto the MFP, until logout according to the fifth embodiment.

FIG. 22B is a flowchart for describing processing from allowing a userof the mobile terminal to login upon a signal from the mobile terminalto the MFP, until logout according to the fifth embodiment.

FIG. 23 is a flowchart for describing processing by which the mobileterminal logs into the MFP according to the fifth embodiment.

DESCRIPTION OF EMBODIMENTS

Embodiments of the present invention will now be described hereinafterin detail, with reference to the accompanying drawings. It is to beunderstood that the following embodiments are not intended to limit theclaims of the present invention, and that not all of the combinations ofthe aspects that are described according to the following embodimentsare necessarily required with respect to the means to solve the problemsaccording to the present invention.

Note that embodiments explained below explain an example of amulti-function peripheral (MFP) as one example of an informationprocessing apparatus according to the present invention. However, theinformation processing apparatus according to the present invention isnot limited to such a multi-function peripheral, and it can be adaptedto, for example, a communication apparatus, such as a printer, scanner,a fax machine or the like; an information device, such as a PC; or thelike.

First Embodiment

FIG. 1 depicts a view for illustrating an example configuration of acommunication system according to a first embodiment of the presentinvention.

In this communication system, a plurality of MFPs (multi-functionperipheral) and a plurality of mobile terminals are present, and, forexample, an office environment in which each user possesses his or herown mobile terminal and always carries it is envisioned. Each MFP has acopy function, facsimile transmission/reception function, scanningfunction, box function, transmission function, printing function, or thelike, and is installed in accordance with the office environment. Thesystem of FIG. 1 shows an MFP 101, a mobile terminal 102, and a mobileterminal 103, but the number of these devices is not limited to this.

The mobile terminal 102 and the mobile terminal 103 are each possessedby different users. The MFP 101 is connected to a network (LAN) 104, andcan perform bidirectional communication with other terminals connectedto the LAN 104, via the LAN 104. Similarly, the mobile terminal 102 andthe mobile terminal 103 can be connected to the LAN 104 via a wirelessrouter 105, and can perform bidirectional wireless communication withother terminals connected to the LAN 104. In addition, the MFP 101 andthe mobile terminals 102, 103 comprise a Bluetooth (registeredtrademark) communication function as a short-range wirelesscommunication function, and in a range in which Bluetooth radio wavesreach can perform communication, after connecting to one another.

FIG. 2 is a block diagram for explaining a hardware configuration of theMFP 101 and the mobile terminal 102 according to the first embodiment.Note that because a hardware configuration of the mobile terminal 103 isthe same as the mobile terminal 102, an explanation thereof is omitted.

Firstly, a hardware configuration of the MFP 101 is explained.

A CPU 201 controls operation of the MFP 101 overall. The CPU 201 reads acontrol program stored in a ROM 202, and then performs various control,such as reading control, print control, or transmission control. A RAM203 is a volatile memory used as a work area or the like when the CPU201 executes various programs. An HDD (hard disk drive) 204 stores imagedata or various programs. A console unit 205 comprises a display unitthat operates as a touch panel that is operable with a user's finger,hard keys, or the like. A printer 206 prints an image on a sheet inaccordance with image data transferred via an internal bus 221. Ascanner 207 generates image data after reading an image on an original.An IC card reader 208 reads an IC card, which the user possesses, forauthentication of the user. A Bluetooth I/F 209 is an interface thatperforms wireless communication in accordance with a Bluetooth standard,and performs both-way wireless communication with another device thathas a Bluetooth I/F. In the first embodiment, the MFP 101 can performboth-way communication in accordance with the Bluetooth standard withthe mobile terminals 102, 103. A network I/F 210 has an NIC (NetworkInterlace Card) for connecting to the LAN 104. A timer 223 performstimekeeping for a predetermined amount of time in accordance with aninstruction of the CPU 201, and notifies the CPU 201 by an interrupt orthe like when a designated interval has elapsed. The internal bus 221 isconnected to the CPU 201 and each unit described above, and conveysdata, a control signal, or the like. Note that a program executed by theCPU 201 may be installed in the HDD 204, and may be executed after beingdeployed into the RAM 203 at execution time.

Next, a hardware configuration of the mobile terminal 102 is explained.

A CPU 211 controls operation of the mobile terminal 102 overall. A RAM212 is a volatile memory used as a work area or the like when the CPU211 executes various programs. A flash memory 213 is a non-volatilememory that stores various programs or data. A console unit 214comprises a display unit and that operates as a touch panel that isoperable with a user's finger. A Bluetooth I/F 215 is an interface thatcommunicates by Bluetooth, and performs both-way communication withanother device that has a Bluetooth interface. In the first embodiment,the mobile terminal 102 performs both-way communication with the MFP 101via Bluetooth. A wireless network interface 216 is a wireless-supportingNIC capable of communicating after connecting to the wireless router105. A speaker 217 converts an electrical signal into a sound. Amicrophone 218 detects a sound and converts it into an electricalsignal. A camera 219 captures a still image or a moving image, andconverts it into electronic data. A GPS 220 is a receiver for GlobalPositioning System. An internal bus 222 is connected to the CPU 211 andeach unit described above, and conveys data, a control signal, or thelike.

FIG. 3A is a block diagram explaining a software configuration of theMFP 101 according to the first embodiment, and FIG. 3B is a blockdiagram explaining a software configuration of the mobile terminal 102according to the first embodiment. Note that because a softwareconfiguration of the mobile terminal 103 is the same as the mobileterminal 102, an explanation thereof is omitted.

FIG. 3A is a block diagram for describing a software configuration ofthe MFP 101, and a data region that software manages. A document 304, aprint job 305, a counter 306, and a user account 313 indicate dataregions that software stores in the RAM 203 or the HDD 204 and manages.A platform 301 can be configured in a form that includes an operatingsystem such as Linux (registered trademark), a Java (registeredtrademark) virtual machine, an OSGi (registered trademark) framework,and a device driver group. Java is a registered trademark of OracleCorporation. An OSGi framework is a Java-based service platform definedby the OSGi Alliance (a standardization organization). The platform 301comprises a device driver group for controlling various hardware therebyproviding applications that operate on the platform 301 with an API forusing hardware. For example, a Bluetooth controller 302 is a devicedriver for controlling the Bluetooth I/F 209, and a network controller303 is a device driver for controlling the network I/F 210. Others arenot shown graphically, but a printer module that controls the printer206 and a scanner module that controls the scanner 207 are present inthis platform 301. The platform 301 provides applications with an APIfor reading/writing data of the document 304, the print job 305 and thecounter 306.

A menu 307, a copy 308, a print 309, and a send 310 are applicationsthat operate on the platform 301, and display user interfaces thatprovides various functions to the console unit 205. For example, thecopy 308 controls the scanner 207 and the printer 206 via the platform301, to execute a copy. The print 309 provides a function that printsdocument data stored in the document 304 or a print job saved in theprint job 305. Output of copying or printing is executed via an API ofthe plat form 301, and the platform 301 records in the counter 306 thenumber of sheet printed. The send 310 provides a function that transmitsdocument data obtained from the scanner 207 to an external unit. Themenu 307 is a module that displays a menu screen for selecting anapplication (for example, copy, print, send) from the console unit 205.A remote UI 311 is a module that provides a user interface described inHTML when a Web browser of the mobile terminal 102 or 103 accesses theMFP 101 via an HTTP protocol. The remote UI 311 provides a userinterface that manages setting of the MFP 101, and a user interface forprinting document data stored in the document 304. A login service 312is a module that provides a login function when a user uses the MFP 101.

Next, explanation will be given of a management function for the useraccount 313 which the login service 312 comprises, a local loginfunction, a remote login function, and a Bluetooth service access loginfunction.

User Account Management Function

A user interface for performing registration or management of a useraccount is provided to a user. Information registered via the userinterface is recorded in the user account 313 and then managed. For thisinformation that is managed, there is, for example, a user name/apassword/an IC card number/a role/or the like, as shown in TABLE 1 (listof user information).

TABLE 1 LIST OF USER INFORMATION USER NAME PASSWORD IC CARD NUMBER ROLEALICE PASSWORD1 01A1B2C3D4E5F6G1 ADMINISTRATOR BOB PASSWORD201A1B2C3D4E5F6G2 GENERAL USER CAROL PASSWORD3 01A1B2C3D4E5F6G3 GENERALUSER DAVE PASSWORD4 01A1B2C3D4E5F6G4 GENERAL USER

Local Login Function

A login/logout function is provided to a user who uses the console unit205. A login screen is displayed on the console unit 205, guarding suchthat a user who has not logged-in cannot use the console unit 205. Thenumber of users who can be simultaneously be logged in locally is “1”.Accordingly, a plurality of users cannot simultaneously be logged inlocally. If login for a user has succeeded, the screen of the displayunit of the console unit 205 is caused to transition from a login screento a menu screen, to cause the state to be such that the user can usethe MFP 101. As methods of performing the local login, a plurality oflogin methods are provided. For example, the following login methods areprovided.

(1) Login Using Keyboard

Via the login screen displayed by the console unit 205, a user name anda password input by the user operating the console unit 205 areobtained, and login processing is performed when that user isauthenticated.

(2) Login Using IC Card

An IC card number is obtained from a user's IC card that is held up tothe IC card reader 208, the user is specified, and login processing isperformed when the user can be authenticated.

(3) Login Using Mobile

When user authentication information and a login request are receivedfrom a mobile terminal via a Bluetooth communication, the user isauthenticated and login processing is performed. Here a level isprovided for the login request by the mobile terminal, and for example,an implementation is made so that a request of a predetermined level isrefused depending on the state of the MFP 101. The MFP 101 records andmanages a StatusID, shown in TABLE 2 below (list of loginpermission/prohibition states), in the RAM 203. Here, as shown in TABLE2, if StatusID is “1” login is possible, but if StatusID is “2” or “3”,there are cases in which a login request is not accepted, depending onthe login request level and a state of the MFP 101. When StatusID is“3”, configuration is taken such that, after the user logs out, a loginrequest from the user is not accepted until the user exits a range of apredetermined distance (for example, 10 cm to 2 m) from the MFP 101.

TABLE 2 LIST OF LOGIN PERMISSION/PROHIBITION STATES StatusID MEANING 1LOGIN IS POSSIBLE 2 LOGIN REQUEST LEVEL 1 IS NOT ACCEPTED BECAUSEANOTHER USER IS LOGGED IN. 3 LOGIN REQUEST LEVELS 1 AND 2 ARE NOTACCEPTED BECAUSE IMMEDIATELY AFTER A LOGOUT

Next, as methods of logging-out after the local login, the followingplurality of methods are provided.

(1) A logout button 410 (FIG. 4 ) is displayed on the console unit 205,and logout processing is performed when a press of the logout button isdetected.

(2) Logout processing is performed when the user does not operate theconsole unit 205 for a predetermined interval.

(3) Logout processing is performed when a logout request is receivedfrom a mobile terminal.

After logout processing, the login screen is displayed.

Next, explanation will be given regarding a remote login.

Remote Login Function

A login/logout function is provided when using the remote UI 311. Forexample, when access to the remote UI 311 from the mobile terminal 102is detected, information of a login screen described in HTML istransmitted to the mobile terminal 102. The user name and password inputto the login screen are then obtained, user authentication is performed,and login to the remote UI 311 is permitted. Configuration is taken suchthat a plurality of users can remote login simultaneously.

(1) Login Function for Bluetooth Service Access

A login/logout function is provided for accessing services exposed byBluetooth.

Next, referring to FIG. 3B, explanation is given of a softwareconfiguration of the mobile terminal 102 according to the firstembodiment. Note that in the following explanation, explanation is givenof an example of the mobile terminal 102, but in the case of the mobileterminal 103, of course it is possible to execute similarly.

A document 320 and authentication information 319 indicate data regionsthat software stores and manages in the flash memory 213. A platform 314can be configured from a platform such as, for example. Google Inc.'sAndroid (registered trademark ) or Apple Inc.'s iOS (registeredtrademark). The platform 314 comprises a device driver group forcontrolling various hardware thereby providing applications that operateon the platform 314 with an API for using the various hardware. As adevice driver group, in the first embodiment, a Bluetooth controller 315and a wireless network controller 316 are present. The Bluetoothcontroller 315 is a device driver for controlling the Bluetooth I/F 215,and the wireless network controller 316 is a device driver forcontrolling the wireless network interface 216. It is possible toinstall various applications on the mobile terminal 102, and to causethe applications to operate on the platform 314. In the firstembodiment, an MFP connection application 317 is installed in advance.The MFP connection application 317 is, for example, provided withfunctions as below.

(1) Connecting to the MFP 101 via Bluetooth, and performing the loginrequest or the logout request.

(2) It is possible for a user to record in advance, in theauthentication information 319, user authentication information (username, password) used for the login request. For example, a pair of auser name and a password shown in the following TABLE 3 (Authenticationinformation) is recorded.

TABLE 3 AUTHENTICATION INFORMATION ITEM VALUE USER NAME ALICE PASSWORDPASSWORD1

(3) A connection is made to the MFP 101 via the wireless LAN, and aprint request for document data or photograph data recorded in thedocument 320 is issued.

(4) A Web browser 318 is activated and connection with the remote UI 311of the MFP 101 is made.

The MFP connection application 317, for example, holds installationvalues such as are shown in TABLE 4 (List of connection settings) below.The following TABLE 4 indicates that the login request is performed whenthe mobile terminal 102 enters a distance not more than 2 m from the MFP101, and indicates that the logout request is performed when the mobileterminal 102 is a distance of 5 m or more apart from the MFP 101. Thismeans that the level of the login request is used differently inaccordance with a distance between the MFP 101 and the mobile terminal102. Note that, as will be explained later, the distance at which therequest is performed may be set to different values depending on theuser. For example, for a user who always works near the MFP 101, thedistance at which this request is performed is set to be smaller thanfor other users.

TABLE 4 LIST OF CONNECTION SETTINGS DISTANCE AT WHICH A REQUEST ISPERFORMED REQUEST TO MFP 2 m TO 30 cm LOGIN REQUEST LEVEL 1 30 cm TO 10cm LOGIN REQUEST LEVEL 2 10 cm OR LESS LOGIN REQUEST LEVEL 3 5 m OR MORELOGOUT REQUEST

Configuration may be taken so that the above distances can be modifiedby a user of the mobile terminal 102, or configuration may be taken soas to obtain settings of the above distances from the MFP 101.Measurement of a distance from the MFP 101 uses an RSSI (Received SignalStrength Indication) of Bluetooth that the MFP 101 transmits. It isadvantageous if a logout distance is longer than a login distance. Thisis because the RSSI weakens if an obstacle enters between the mobileterminal 102 and the MFP 101, and a logout due to a misdetection due toan obstacle being in between is prevented. For example, using theproperty that the RSSI attenuates when distance between the MFP 101 andthe mobile terminal 102 lengthens, it is possible to create data showinga relation between the RSSI (dBm) and the distance from the MFP 101, asin data shown on the following TABLE 5 (last of RSSI and estimateddistance).

TABLE 5 LIST OF RSSI AND ESTIMATED DISTANCE RSSI (dBm) −40 −50 −59 −62ESTIMATED 10 cm 50 cm 1 m 2 m DISTANCE

If an intensity of a Bluetooth transmission radio wave that the MFP 101transmits is known in advance, configuration may be taken so as themobile terminal 102 holds in advance data of the relation between RSSIand the distance from the MFP 101, such as is described above.Configuration may also be taken such that the mobile terminal 102dynamically calculates the distance from the MFP 101 by obtaining fromthe MFP 101 information regarding the intensity of the Bluetoothtransmission radio wave that the MFP 101 transmits, and comparing thisinformation with the RSSI.

FIG. 4 depicts a view for explaining screen transitions in accordancewith login and logout, and an example of a screen that is displayed on aconsole unit 205 of the MFP 101 according to the first embodiment.

For example, in a state before the user login, a login screen 401 isdisplayed on the console unit 205, and reception of the login requestvia Bluetooth from the mobile terminal 102 or detection of the IC cardis waited for. The login processing is performed when detection of theIC card, or the login request by Bluetooth is received. If the loginsucceeds, transition is made to a menu screen 403, and if the loginfails, the original login screen 401 is displayed. If a press of abutton 404 that switches to keyboard authentication is detected on thelogin screen 401, transition is made to a login screen 402 that uses asoftware keyboard for account and password input. The login screen 402is provided with a button 405 for returning to the login screen 401.When a press of a login button 406 is detected on the login screen 402,the account and password input via the login screen 402 are obtained,and login processing that includes authentication processing of the useris performed. If the login succeeds, transition is made to the menuscreen 403, and if the login fails, the original login screen 402 isdisplayed.

The menu screen 403 is provided with buttons 407 to 409 for callingvarious applications, and the logout button 410. If a press of thelogout button 410 is detected, logout processing is executed, and thenthe login screen 401 is displayed.

Next, explanation will be given of Bluetooth functions and servicesprovided by the MFP 101 according to the first embodiment.

For the MFP 101 according to the first embodiment, when a power supplyis turned on, the platform 301 activates Bluetooth via the Bluetoothcontroller 302, and sends a Bluetooth Advertising Packet atpredetermined intervals. This Advertising Packet includes data such asbelow.

Local Name

A device name, or the like. For example, “(company name) MFP CXXX” orthe like.

Manufacturer Specific Data

An identifier and optional data of a maker that manufactured the MFP isstored. It is possible to include an RSSI (Received Signal StrengthIndication, for example, −59 dBm) for a case in which a Bluetooth packetis received at a location separated from the device by 1 m.

TX Power Level

Transmission radio wave intensity. For example. “−38 dBm” or the like.

Service UUIDs

A UUID representing a function of the device.

FIG. 5 depicts a view for describing an example of a Bluetooth serviceprovided by the MFP 101 according to the first embodiment.

This MFP 101 exposes to the mobile terminal 102 connected via Bluetootha maintenance service 504, a print service 503, an MFP informationservice 502 and a user authentication service 501 defined by a GATT(Generic Attribute) profile. The user authentication service 501comprises the following characteristics that are defined by the GATTprofile. The login service 312 performs reading/writing of a value foreach characteristic via an API provided by the platform 301 and theBluetooth controller 302.

StatusID 505

A characteristic indicating a state relating to loginpermission/prohibition of the MFP 101. Read by the mobile terminal 102,and used to obtain the state regarding login permission/prohibition ofthe MFP 101. As this value, similarly to in the list of loginpermission/prohibition states, values shown in the following TABLE 6(list of StatusIDs) are stored.

TABLE 6 StatusID LIST StatusID MEANING 1 LOGIN IS POSSIBLE 2 LOGINREQUEST LEVEL 1 IS NOT ACCEPTED BECAUSE ANOTHER USER IS LOGGED IN. 3LOGIN REQUEST LEVELS 1 AND 2 ARE NOT ACCEPTED BECAUSE IMMEDIATELY AFTERA LOGOUT

The login service 312 changes the value (StatusID) in accordance with achange of the state. At a time of changing the value, the Bluetoothcontroller 302 notifies the connected mobile terminal 102 of the changeof the value, via a Notification in an Attribute Protocol (ATT).

UserName 506

A characteristic for writing (Write) the user name when the mobileterminal 102 requests login.

Password 507

A characteristic for performing a Write of the password when the mobileterminal 102 requests login. May be configured as a characteristic forwhich encryption is necessary for the password for which a Write isperformed.

RequestID 508

A characteristic for the mobile terminal 102 to perform a Write of arequest for an authentication service. For example, Write is performedfor the RequestID 508 such as is shown in the following TABLE 7(RequestID list). Note that the login request levels shown in TABLE 7correspond to the login request levels shown in the previously describedTABLE 4.

TABLE 7 RequestID LIST RequestID MEANING 1 LOGIN REQUEST LEVEL 1 2 LOGINREQUEST LEVEL 2 3 LOGIN REQUEST LEVEL 3 4 LOGOUT REQUEST 5 LOGIN REQUESTFOR BLUETOOTH SERVICE ACCESS

ResultID 509

A characteristic that stores an authentication result (success/failureof user authentication) of when the MFP 101 receives the login requestfrom the mobile terminal 102 and performs authentication of the user.For example, values as shown in the below TABLE 8 (ResultID list) arestored.

TABLE 8 RequestID LIST RequestID MEANING 1 LOGIN SUCCESS 2 LOGIN FAILURE3 CANCEL 4 OTHER ERROR

At a time of storing an authentication result, the Bluetooth controller302 notifies the connected mobile terminal 102 of the authenticationresult, via a Notification in an Attribute Protocol (ATT).

The MFP information service 502 is provided with a URL 510 that stores aURL of the remote UI 311 in the characteristic. Setting of the value ofthe URL 510 is performed by the platform 301 at a time of activating theMFP 101.

The print service 503 is configured as a service that is searchable fromthe mobile terminal 102 after success of a login for access to servicesvia Bluetooth. The print service 503 comprises characteristics as shownbelow. The print 309 performs reading/writing of a value for eachcharacteristic via an API provided by the platform 301 and the Bluetoothcontroller 302.

MyJobList 511

Stores an identifier of a print job associated with a user who performedlogin for Bluetooth service access, from print jobs temporarily storedin the print job 305. If there are a plurality of print jobs associatedwith that user, stores identifiers of the plurality of print jobs.

RequestID 512

A characteristic for the mobile terminal 102 to request an operationwith respect to the print job 305. For example, a Write can be performedfor IDs shown in the following TABLE 9 (print service RequestID list). Avalue for which a Write is performed by the mobile terminal 102 iscommunicated to the print 309, and the print 309 performs a print joboperation in accordance with the request. Here, it is possible toinstruct printing or deletion of the print job.

TABLE 9 PRINT SERVICE RequestID LIST RequestID MEANING 1 PRINT JOBDESIGNATED BY RequestParameter 2 DELETE JOB DESIGNATED BYRequestParameter

RequestParameter513

A characteristic that stores an identifier of the print job 305 that isto be target of an operation when the mobile terminal 102 requests theoperation with respect to the print job 305. The mobile terminal 102writes the identifier of the print job obtained from the MyJobList 511.

The maintenance service 504 is configured as service searchable from themobile terminal 102 when a login for accessing services via Bluetooth issuccessful and a role of the user who logged in is an administrator. Themaintenance service 504 is provided with a Count 514 that stores a countof the counter 306 for a characteristic. For a value of the Count 514,the platform 301 detects a change of the value of the counter 306, andsets the same value.

Note that, while not shown graphically, each service and characteristicis provided with information, such as a handle or UUID, a typeinformation of data, text information, or the like.

Next, explanation is given of basic operation in the mobile terminal 102according to the first embodiment.

FIG. 6 is a flowchart for describing basic operation of the mobileterminal 102 according to the first embodiment. Below, referring to FIG.6 , explanation is given for basic operation when a user who has themobile terminal 102 approaches the MFP 101, and the starts usage of theMFP 101. Inasmuch as it is not mentioned in particular, a subject ofoperation of the mobile terminal 102 is the CPU 211. Inasmuch as it isnot mentioned in particular, a software subject is the MFP connectionapplication 317, or, when the MFP connection application 317 calls anAPI provided by the platform 314, the platform 314 performs processingin its place. Here, explanation is given with the CPU 211 as the subjectof operation.

When processing of the mobile terminal 102 is started, in step S601 theCPU 211 starts a scan for a Bluetooth Advertising Packet transmittedfrom the MFP 101. Then in step S602, upon receiving the AdvertisingPacket, the CPU 211 advances the processing to step S603, and the CPU211 determines whether a transmission source of the Advertising Packetis a predetermined MFP. Here, the MFP that the user of the mobileterminal 102 normally uses is registered in advance in the mobileterminal 102. Accordingly, in step S603 the CPU 211 determines whetheror not the transmission source of the received Advertising Packet isthis registered MFP. More specifically, the CPU 211 analyzes thereceived Advertising Packet, refers to a value of LocalName,Manufacturer Specific Data, or Service UUIDs, and if a known value isstored, the CPU 211 determines that the received Advertising Packet isof a predetermined MFP. In step S603, if it is not determined to be apredetermined MFP, the Advertising Packet is ignored and the processingproceeds to step S602. Note that the reason to perform the determinationof step S603 is to prevent login to an MFP when the user simply hasapproached or passed by the side of the MFP but does not intend to useit.

In step S603, if it is determined to be an Advertising Packet from thepredetermined MFP 101, the processing proceeds to step S604, and the CPU211 calculates the distance between the MFP 101 and the mobile terminal102 from the RSSI (refer to TABLE 5). Here, for example, the distance iscalculated from a difference between the RSSI and information relatingto an intensity of a transmission radio wave transmitted by the MFP 101,which is included in Manufacturer Specific Data or TX Power Level of theAdvertising Packet. Note that because RSSI includes errors,configuration may also be taken such that calculation of the distance iscalculated after sampling a plurality of Advertising Packets.

Next the processing proceeds to step S605, and the CPU 211 refers to thedistance calculated in step S604 and settings shown on a table of a listof connection settings (TABLE 4), to determine whether or not it iswithin a predetermined distance at which to start usage of the MFP 101.In the first embodiment, it is within the predetermined distance when itis, for example, within a distance of 2 m. Note that at this point,different distances may be set in accordance with the user. Here, forexample if a user A mostly works near the MFP 101, when a distance atwhich the user A can log in is set to within 2 m, because this wouldmean that the user A would always be logged in, in such a case thedistance corresponding to the user A is for example set to 30 cm or thelike. If in step S605 the CPU 211 determines that it is within thepredetermined distance, the processing proceeds to step S606, andwhether the MFP 101 is in use is determined. As a determination methodfor this, for example, a usage status flag of the MFP that indicateswhether the MFP is in use as shown in the following TABLE 10 (usagestatus flag of the MFP) is recorded in the RAM 212 and used. If the MFP101 is in use, that usage status flag is set to TRUE, and when the usecompletes, that flag is set to FALSE; the mobile terminal 102 managesthe usage status of the MFP 101.

TABLE 10 USAGE STATUS FLAG OF MFP VALUE MEANING TRUE MFP IS BEING USEDFALSE MFP IS NOT BEING USED

Here, management of the usage status of the MFP 101 is to avoidinputting another job when the MFP 101 is executing a job. If the MFPusage status flag indicates not being in use, the processing proceeds tostep S607, the CPU 211 changes that flag to TRUE, which indicates thatit is in use, the processing proceeds to step S608, and processing thatuses the MFP 101 is executed. Meanwhile, in step S606 when the MFP usagestatus flag indicates in use, processing completes as is.

Meanwhile, in step S605, if the CPU 211 determines that the distance tothe MFP 101 is not within the predetermined distance, the processingproceeds to step S609, the CPU 211 refers to the setting shown on TABLE4 of the list of connection settings, and determines whether distance tothe MFP 101 is greater than or equal to a predetermined distance to endusage of the MFP 101. In the first embodiment, the predetermineddistance or more is, for example, 5 m or more. If in step S609 the CPU211 determines that it is the predetermined distance or more, theprocessing proceeds to step S610, and the CPU 211 determines whether ornot the MFP 101 is in use referring to the previously described flag.Here, if it is determined that the MFP 101 is in use, the processingproceeds to step S611, and the CPU 211 performs processing fortermination of usage of the MFP 101. Then the processing proceeds tostep S612, the CPU 211 changes the previously described flag to FALSE,and this processing terminates. In addition, if in step S609 the CPU 211determines the distance to the MFP 101 is not greater than or equal tothe predetermined distance, the processing advances to step S602. Inaddition, if in step S610 it is determined that the MFP 101 is not inuse, processing terminates as is.

Note that in step S601 there is no necessity for the MFP connectionapplication 317 to be activated. For example, the MFP connectionapplication 317 can request monitoring of whether the platform 314 hasreceived an Advertising Packet from a predetermined MFP in advance. Theplatform 314, which has received the Advertising Packet from thepredetermined the MFP, can also then activate the stopped MFP connectionapplication 317.

In this way, by the mobile terminal 102 approaching a predetermined MFP,it is possible to transition that MFP to a state in which it can beused. Note that it is presumed that the mobile terminal 102 is somethingthat the user always carries, and that a user does not forget to carryit, as with an IC card.

FIG. 7 is a flowchart for describing details of MFP usage processing ofstep S608 of FIG. 6 .

When the mobile terminal 102 starts usage of the MFP 101, firstly instep S701 the CPU 211 establishes a communication connection with theMFP 101 via Bluetooth. Inasmuch it is not mentioned particularly,further data communication between the mobile terminal 102 and the MFP101 is communication via Bluetooth. Next, the processing proceeds tostep S702 and the CPU 211 obtains Bluetooth service information from theMFP 101. In the first embodiment, at this point in time it is possibleto obtain information of services corresponding to the userauthentication service 501 and the MFP 101. Next, the processingproceeds to step S703 and the CPU 211 reads the StatusID 505 that theuser authentication service 501 is provided with. Then the processingproceeds to step S704, and the CPU 211 determines whether or not thelogin request to the MFP 101 is possible, based on a value obtained byreading the distance calculated in step S604 and the StatusID 505. Here,for example, if the calculated distance is 2 m to 30 cm, whether thelogin request to the MFP 101 at a login request level 1 is possible isdetermined based on the value obtained in accordance with the StatusID505. As shown by TABLE 6 described previously, if the StatusID 505 is“1”, the login request is possible, but if another value is indicated,it is determined that the login request is not possible. Similarly, if,for example, the calculated distance is 30 cm to 10 cm,permission/prohibition of the login request of a login request level 2is determined based on a value obtained from the StatusID 505. In such acase, it is determined that the login request is possible if theStatusID 505 is “1” or “2”, and the login request is not possible if theStatusID 505 is “3”. Because the login request level is 3 if thecalculated distance is less than or equal to 10 cm, it is determinedthat the login request is possible regardless of what value the StatusID505 is.

If in step S704 the CPU 211 determines that the login request ispossible, the processing proceeds to step S705, and a login to the MFP101 is requested. More specifically, values are written to the RequestID508, the Password 507, and the UserName 506 of the user authenticationservice 501. For example, information shown in the authenticationinformation of TABLE 3 is written to the UserName 506 and the Password507, and one of values “1”, “2”, or “3” shown in the RequestID listshown in previously described TABLE 7 is written to the RequestID 508,in accordance with the calculated distance. Next, the processingproceeds to step S706, and the CPU 211 receives by a Notification anupdate of the ResultID 509 and the StatusID 505 as a response from theMFP 101. Then the processing proceeds to step S707, and the CPU 211disconnects the connection via Bluetooth with the MFP 101, and thisprocessing terminates.

Meanwhile, if it is determined, in step S704, that the login request isnot possible, the processing proceeds to step S708, and the CPU 211, forexample, displays a screen such as is shown in FIG. 8 to the consoleunit 214, and thereby presents a function that can be used as asubstitution function instead of the local login.

FIG. 8 depicts a view for showing an example of a screen that shows anexample of a presentation of substitution functions when it is notpossible to login to the MFP, and which is displayed on the console unit214 of the mobile terminal 102 according to the first embodiment.

Here, a display to the effect that the MFP 101 cannot lie used becauseanother user is using the MFP 101, and a list of substitution functionsare displayed. As instruction buttons for substitution functions, a“connect to remote UI” button 801, a “print” button 802, a “seemaintenance information” button 803, and a “cancel” button 804 aredisplayed.

Next the processing proceeds to step S709, and the CPU 211 determineswhether or not the user has selected, through the screen of FIG. 8 , asubstitution function. Here, if the user did not select a substitutionfunction but pressed the cancel button 804, the processing proceeds tostep S707, the connection via Bluetooth with the MFP 101 isdisconnected, and this processing terminates. However, if the userselected any substitution function, the processing proceeds to stepS710, and the substitution function that the user selected is providedto the user. Then, when the processing by the function completes afterthe substitution function is provided, the processing proceeds to stepS707, the connection via Bluetooth with the MFP 101 is disconnected, andthis processing terminates.

FIG. 9 is a flowchart for describing details of processing for using thesubstitution function of step S710 of FIG. 7 .

Firstly in step S901 the CPU 211 determines the substitution functionthat the user selected via the screen of FIG. 8 , and executesprocessing corresponding to the selected substitution function. Forexample, if the user selected the “connect to remote UI” button 801, theprocessing proceeds to step S902. In step S902 the CPU 211 reads the URL510 of the MFP information service 502, and obtains a URL of the remoteUI 311 of the MFP 101. Next, the processing proceeds to step S903, andthe CPU 211 activates the Web browser 318, and connects to the remote UI311 of the MFP 101 via the wireless network interface 216. Then theprocessing proceeds to step S904, and the CPU 211 uses the HTTP protocolto execute remote login.

Meanwhile in step S901, if the user selected the “print” button 802, theprocessing proceeds to step S905, and the CPU 211 performs a loginrequest for accessing services via Bluetooth to the MFP 101. Morespecifically, values are written to each of the RequestID 508, thePassword 507, and the UserName 506 of the user authentication service501. Here, the UserName 506 and the Password 507 are written with theauthentication information of the user of the mobile terminal 102 asshown in TABLE 3. In addition, to the RequestID 508 is written a value“5” that indicates a login request for Bluetooth service access of TABLE7. Next, the processing proceeds to step S906, and the CPU 211 receivesby a Notification an update of the ResultID 509 as an authenticationresult from the MFP 101. Here, if login via Bluetooth succeeds, in stepS906, the CPU 211 obtains service information, and the processingproceeds to step S907.

In the first embodiment, after logging in via Bluetooth, access to theprint service is permitted by the MFP 101, and information of the printservice can be obtained. Thus, the CPU 211 of the mobile terminal 102,which has obtained information of the print service, can use the printservice in step S907. For example, it is possible to obtain informationof a job associated with the authenticated user from the print service.Also, it is possible to display jobs of the user on the console unit214, and accept a print instruction from the user, for example. If theuser instructs printing, a print request is written to the RequestID508, and an instruction to print is made to the MFP 101.

Also, if, in step S901, the user selected the “see maintenanceinformation” button 803, for example, the processing proceeds to stepS908, and the CPU 211 makes a login request for accessing services viaBluetooth to the MFP 101. Next, the processing proceeds to step S909 andthe CPU 211 obtains the service information. In the first embodiment, ifa role of a user who succeeded in login via Bluetooth and wasauthenticated is an administrator, the user is permitted by the MFP 101to access the maintenance service, and it becomes possible to obtain themaintenance service. Thus if access to the maintenance service succeeds,the processing proceeds to step S910, and the CPU 211 uses themaintenance service. Here, for example, it is possible to obtaininformation of the counter 306 from the maintenance service, and displaythe value of the counter on the console unit 214.

FIG. 10 is a flowchart for describing details of the MFP 101 usagetermination processing of step S611 of FIG. 6 .

Firstly, in step S1001 when the CPU 211 starts logout processing, theCPU 211 performs a Bluetooth connection to the MFP 101. Next, theprocess proceeds to step S1002, and the CPU 211 obtains the serviceinformation, and obtains information of the user authentication service501. Next, processing proceeds to step S1003, and the CPU 211 reads avalue of the StatusID 505. Next, processing proceeds to step S1004, andthe CPU 211 determines whether or not it is locally logged in to the MFP101, based on the value of the StatusID 505. In the first embodiment,from the StatusID 505 list of TABLE 6, if the StatusID 505 is “2”, thisindicates being locally logged in. Here, if it is determined that it islocally logged in, the processing proceeds to step S1005, and the CPU211 transmits a logout request to the MFP 101. More specifically, inaddition to writing a user name to the UserName 506, a value “4”indicating a logout request (TABLE 7) is written to the RequestID 508.Then the processing proceeds to step S1006, the Bluetooth connectionwith the MFP 101 is disconnected, and this processing terminates.Meanwhile, if in step S1004 not being locally logged in is determined, alogout request is not transmitted, the processing proceeds to stepS1006, the Bluetooth connection with the MFP 101 is disconnected, andthis processing terminates.

By virtue of the above explained processing, by simply causing themobile terminal 102 to approach the MFP 101, which is set in advance, itis possible to log in to the MFP 101 and use the MFP 101. Here when theMFP 101 is being used by another user, it is possible to presentselectable substitution functions to the user, who possesses the mobileterminal 102, and the user can cause the substitution function by beexecuted by selecting it. After logging into the MFP 101, because theuser who possesses the mobile terminal 102 is automatically logged-outfrom the MFP 101 when the user separates from the MFP 101 by apredetermined distance, it is possible to prevent situation in which theuser forgets to logout after logging in.

FIG. 11 is a flowchart for describing operation of local loginprocessing in the MFP 101 according to the first embodiment. Note thatinasmuch as it is not mentioned particularly, the CPU 201 is the subjectof operation of the MFP 101. Inasmuch as it is not mentionedparticularly, the software subject is the login service 312 or theplatform 301 performs substitute processing when the login service 312calls an API provided by the platform 301.

Upon the start of reception of a local login request, the CPU 201enables login that uses the keyboard, login via the IC card, and amobile login. More specifically, in step S1101 the CPU 201 enables loginusing the keyboard, displays the login screen on the console unit 205,and sets a state in which a login operation by the user can be detected.For login using the IC card, step S1102 the CPU 201 sets a state inwhich the IC card can be detected by the IC card reader 208. For loginvia mobile, in step S1103 the CPU 201 publishes a user authenticationservice defined by a Bluetooth GATT profile, and sets a state in which alocal login request via Bluetooth can be detected.

Thus the processing proceeds to step S1104 and when the CPU 201 detectsthe login request from any of these, the processing proceeds to stepS1105. In step S1105 the CPU 201 specifies an issuing source of thatlogin request, and performs authentication processing that correspondsto the issuing source of the login request.

If, in step S1105, the CPU 201 determines that there is a login thatuses the keyboard of the console unit 205, the processing proceeds tostep S1106, and the CPU 201 detects an operation via the login screendisplayed on the console unit 205, and obtains the user name andpassword input via the login screen. Next, the processing proceeds tostep S1107, the CPU 201 performs authentication of the user bycomparing/matching that obtained value with information registered inthe list of user information shown in the previously described TABLE 1,for example, that is already registered in the MFP 101 in advance, andthe processing proceeds to step S1116.

Meanwhile, if in step S1105 the CPU 201 determines a login via the ICcard, the processing proceeds to step S1108, and when the CPU 201detects that the IC card is held up to the IC card reader 208, the ICcard number thereof is obtained. Then the processing proceeds to stepS1109, and the CPU 201 compares/matches the obtained the IC card numberwith the IC card numbers registered in the user information list (referto TABLE 1) already registered in the MFP 101 in advance, performsauthentication of the user who possesses that IC card, and theprocessing proceeds to step S1116.

In step S1105 if the CPU 201 determines a mobile (mobile terminal)login, the processing proceeds to step S1110, and the CPU 201 detectsthat an ID that indicates a login request is written in the RequestID508 of the user authentication service 501. Then the CPU 201 obtains thelevel of the login request (TABLE 7) from the value written in theRequestID 508, compares it to login permission/prohibition state ofTABLE 2, and determines whether or not it is a login request level thatcan be accepted. Here, for example, for a login request of level 1, ifthe login permission/prohibition state is not such that it is possibleto login (StatusID=1) but rather is StatusID=2 or 3, then the loginprocessing is cancelled. For a login request of level 2, if the loginpermission/prohibition state indicates that the login request level 2 isnot accepted (StatusID=3), then similarly the login processing iscancelled. Here, if the login processing is cancelled, the processingproceeds to step S1115, the CPU 201 sets a value “3” that indicatescancellation for the ResultID 509 (TABLE 8), and the mobile terminal 102that is performing the login request is notified of the cancellation viaa Notification. In addition, if in step S1110, there was a login requestof level 3, then the login request is accepted unconditionally. Thus ifin step S1110, the CPU 201 determines that there is an acceptable thelogin request level, the processing proceeds to step S1111, and the CPU201 determines whether or not another user is locally logged in. Here ifit is determined that another user is logged in, the processing proceedsto step S1112, the CPU 201 executes processing to forcibly logout thelogged-in user, and the processing proceeds to step S1113. In addition,in step S1111, when another user is not logged in, the processing alsoproceeds to step S1113. In step S1113 the CPU 201 refers to the UserName506 and the Password 507 written from the mobile terminal 102, andobtains the user name and the password. Next, the processing proceeds tostep S1114, and the CPU 201 performs authentication of the user bycomparing/matching those obtained values with information recorded inthe list of user information that is already registered in the MFP 101in advance. Next, the processing proceeds to step S1115, the CPU 201sets the authentication result of the user to the ResultID 509, andtransmits by a Notification a result of the login processing to themobile terminal 102 that performed the login request, and then theprocessing proceeds to step S1116.

In step S1116 the CPU 201 determines success/failure of the userauthentication; if it is determined that the authentication failed, thenthe processing returns to the start of the flowchart of FIG. 11 , anddetection of a subsequent login request is waited for. Meanwhile, if, instep S1116, the CPU 201 determines that authentication of the user issucceeded, then the processing proceeds to step S1117. In step S1117,the CPU 201 updates the StatusID 505 of the login permission/prohibitionstate to a value “2” that indicates “login request level 1 is notaccepted because another user is logged in”. Then the processingproceeds to step S1118, and the CPU 201 transitions display of theconsole unit 205 from the login screen to the menu screen, and thislogin processing terminates.

Note that here if it is configured so that the mobile terminal 102reliably checks the login permission/prohibition state of the MFP 101beforehand and there is no performing of the login request to the MFP101 incorrectly, determination of the login request level in step S1110is not necessarily needed.

Next explanation is given of a logout operation in the MFP 101.

FIG. 12 is a flowchart for illustrating operation of logout processingin the MFP 101 according to the first embodiment. Note that inasmuch asit is not mentioned particularly, the CPU 201 is the subject ofoperation of the MFP 101. Inasmuch as it is not mentioned particularly,the software subject is the login service 312, or the platform 301performs substitute processing when the login service 312 calls an APIprovided by the platform 301.

Upon the user performing the local login, the MFP 101 starts logoutacceptance. Here, as a method of logging-out, manual logout, logout bythe timer 223, and mobile logout are enabled. More specifically, formanual logout, in step S1201 the CPU 201 displays a logout button 410(FIG. 4 ) on the console unit 205, and enters a state in which a pressof the logout button 410 by the user can be detected. For logging-out bythe timer 223, in step S1202 the CPU 201 enters a state in which anabsence of an operation by a user in a fixed interval in accordance withtimer processing can be detected. For logout by the mobile, in stepS1203 the CPU 201 enters a state in which writing of the logout requestin the RequestID 508 can be detected via Bluetooth from the mobileterminal.

Then the processing proceeds to step S1204 and when the CPU 201 detectsthe logout request, the processing proceeds to step S1205. In stepS1205, the CPU 201 determines which one of manual, timer, or mobile thelogout request is, and then performs processing that corresponding tothe logout request.

If, in step S1205, the CPU 201 detected a press of the logout button410, the processing proceeds to step S1206, and logout processing isperformed. Next, the processing proceeds to step S1207 and the CPU 201updates the StatusID 505 of the login permission/prohibition states to avalue “3”, which indicates “Login request levels 1 and 2 are notaccepted because it is immediately after a logout”. Next, the processingproceeds to step S1208 and the CPU 201 activates the timer 223 to checkthe progress of time. Then the processing proceeds to step S1209, andthe CPU 201 causes a transition of the display of the console unit 205to the login screen. At this point, a state in which login usingkeyboard, login using IC card, and login that uses a login request level3 from Bluetooth are possible is entered. Thereafter, in step S1210 whenthe CPU 201 detects the passing of a fixed interval (for example, 10seconds) by the timer 223, and there was no login request in a fixedinterval, the processing proceeds to step S1211. In step S1211, the CPU201 updates the StatusID 505 of the login permission/prohibition stateto a value “1” that indicates “login is possible”. Thereby, a state inwhich all login methods are enabled is returned to.

Meanwhile, if in step S1205 the CPU 201 detects that there has been nouser operation in the fixed interval in accordance with timekeeping bythe timer 223, the processing proceeds to step S1212, and the CPU 201performs logout processing. Next, the processing proceeds to step S1213,and the CPU 201 updates the StatusID 505 of the loginpermission/prohibition state to a value “1” that indicates “login ispossible”. Then in step S1214, the CPU 201 displays the login screen onthe console unit 205, and this processing terminates.

In addition, if in step S1205 the CPU 201 detects writing of the username to the UserName 506 via Bluetooth from the mobile terminal 102 andthat the logout request is written in the RequestID 508, the processingproceeds to step S1215. In step S1215 the CPU 201 detects logout bymobile, and determines whether the logged-in user name and the user namewritten to the UserName 506 are the same. If it is determined here thatthe user names do not match, that logout request is cancelled, the startof this flowchart is returned to, and the next logout request is waitedfor. If in step S1215 it is determined that the user names match, theprocessing proceeds to step S1216 and the CPU 201 performs logoutprocessing. Next, the processing proceeds to step S1217, and the CPU 201updates the StatusID 505 of the login permission/prohibition state to avalue “1” that indicates “login is possible”. Then in step S1218, theCPU 201 displays the login screen on the console unit 205, and thisprocessing terminates.

FIG. 13 is a flowchart for describing operation in a case in which theMFP 101 according to the first embodiment receives a login request forBluetooth service access from the mobile terminal 102. Note thatinasmuch as it is not mentioned particularly, the CPU 201 is the subjectof operation of the MFP 101. Inasmuch as it is not mentionedparticularly, the software subject is the login service 312 or theplatform 301 performs substitute processing when the login service 312calls an API provided by the platform 301.

This processing is started in step S1301 by the CPU 201 detecting that a“login request for Bluetooth service access” has been written in theRequestID 508 of the user authentication service 501. Next, theprocessing proceeds to step S1302, and the CPU 201 refers to theUserName 506 and the Password 507 written from the mobile terminal 102,and obtains the user name and the password, which are the authenticationinformation of the user. Then, the processing proceeds to step S1303,and the CPU 201 performs authentication of the user bycomparing/matching values obtained in step S1302 with informationrecorded in the list of user information (TABLE 1) that is alreadyregistered in the MFP 101 in advance. Then in step S1304 the CPU 201determines the success/failure of the user authentication, and ifauthentication of the user succeeded, the processing proceeds to stepS1305 and the CPU 201 sets a state in which, in the same Bluetoothconnection. Find is possible for the print service from the mobileterminal 102. Meanwhile, if, in step S1304, the CPU 201 determines thatauthentication of the user is failed, then the processing proceeds tostep S1308. Continuing on from step S1305, the processing proceeds tostep S1306, and the CPU 201 determines the role of the authenticateduser. Here, if the role of the user is an administrator, the processingproceeds to step S1307, and a state in which, in the same Bluetoothconnection interval and connection, a Find from the mobile terminal 102is possible for the maintenance service is set, and then the processingproceeds to step S1308. Meanwhile, if, in step S1306, the CPU 201determines the role of the user is not administrator, then theprocessing proceeds to step S1308.

In step S1308, the CPU 201 sets the authentication result of the user tothe ResultID 509, and transmits by a Notification a result of the loginprocessing to the mobile terminal 102 that performed the login request.Thereafter, the processing proceeds to step S1309, and if the CPU 201detects disconnection of Bluetooth, the processing proceeds to stepS1310, and the CPU 201 resets the exposed state of the service. Morespecifically, a return is made to a state in which Find is not possiblefor the print service and the maintenance service via Bluetooth.

By virtue of this processing, when the user of the mobile terminalissues a login request for Bluetooth service access to the MFP from themobile terminal, and if the login is authorized, it is possible to use aservice such as printing that the MFP has.

FIG. 14A-FIG. 14D depict views explaining example states of the mobileterminal and the MFP 101 according to the first embodiment of thepresent invention. Below, explanation is given with reference to FIG.14A-FIG. 14D of effects according to the first embodiment.

FIG. 14A indicates a state in which a user (Alice) has approached theMFP 101 while holding the mobile terminal 102, in a state in whichno-one is logged into the MFP 101. In such a case, when it is detectedthat the mobile terminal 102 of Alice has entered a distance of within 2m from the MFP 101, a login request is performed to the MFP 101.Accordingly, login is complete at the point in time that Alice hasreached the front of the console unit 205 of the MFP 101, and because ofthe login Alice can use the MFP 101 immediately without being caused towait in front of the console unit 205. In addition, in a case whereAlice, holding the mobile terminal 102, separates from the MFP 101,because she is automatically logged out when she separates from the MFP101 by 5 m or more, it is possible to prevent forgetting to logout.

FIG. 14B shows a state in which a user (Alice) approaches the MFP 101while holding the mobile terminal 102, when a user who possesses themobile terminal 103 (Bob) is using the MFP 101. In such a case, becausethe MFP 101 is in use, Alice's the mobile terminal 102 cannot perform alogin request to the MFP 101. Accordingly, the mobile terminal 102 doesnot impede use of the MFP 101 by Bob. However, because substitutionfunctions are presented to the mobile terminal 102 of Alice, Alice isalso able to use a function of the MFP 101 in the range of the functionsprovided by the substitution functions.

FIG. 14C shows a case in which Alice approaches the MFP 101 whileholding the mobile terminal 102, to which a user (Carol) is still loggedin because Carol forgot to logout although she has finished using of theMFP 101. In such a case, when the distance between the MFP 101 and themobile terminal 102 is 30 cm to 2 m, the mobile terminal 102 of Alicedoes not perform a login request. However, when Alice reaches theconsole unit 205 of the MFP 101 and the distance between the MFP 101 andthe mobile terminal 102 becomes within 30 cm, the mobile terminal 102 ofAlice performs a login request to the MFP 101. Thereby, the MFP 101causes Carol to be forcibly logged out, and Alice is allowed to login.Thereby it is possible to prevent incorrect usage of the MFP 101 byAlice while Carol is logged in. In addition, there is no need for Aliceto press the logout button 410 displayed on the console unit 205 insteadof Carol.

FIG. 14D shows a state immediately after the logout button 410 displayedon the console unit 205 of the MFP 101 is pressed. In such a case, evenif the mobile terminal 103 of Bob is closely located, the mobileterminal 103 of Bob does not perform a login request. Accordingly, in asituation where Alice is in front of the console unit 205 of the MFP101, it safe as login is not performed by the mobile terminal 103 ofBob. In addition, in a case in which immediately after Alice herselfperforms the logout operation—the user who pressed the logout button 410is Alice—and she wishes to log in to the MFP 101 again, Alice causes themobile terminal 102 to approach to a distance within 10 cm from the MFP101. Thereby, the mobile terminal 102 of Alice performs a login requestto the MFP 101. Thus Alice can log in to the MFP 101 again evenimmediately after logging-out.

Second Embodiment

Next, explanation is given of the second embodiment of the presentinvention. The second embodiment illustrates an example in which amethod of communication that is more secure than the communication shownin the detailed flow at the time of login shown in the first embodimentis performed. Note that a configuration of the mobile terminals 102, 103or the MFP 101 according to the second embodiment, and a systemconfiguration thereof are similar to those of the previously describedfirst embodiment, and explanation thereof is omitted.

FIG. 15 depicts a view for describing characteristics and a userauthentication service according to Bluetooth, provided by the MFP 101according to the second embodiment of the present invention. Hereportions in common with the previously described FIG. 5 are denoted bythe same numerals. In the second embodiment, the user authenticationservice of the MFP 101 comprises the following two characteristicsinstead of the Password 507 of the previously described firstembodiment. Other parts are similar to the previously described firstembodiment.

Challenge 1501

A characteristic used for storage of a challenge. This value stores arandom number that the MFP 101 issues each time.

Hash 1502

A characteristic used for storage of a hash value.

The second embodiment implements user authentication of achallenge-response authentication scheme that uses a Bluetoothcharacteristic to prevent improper obtainment of a password via packetsniffing or MFP spoofing.

FIG. 16 depicts a view for describing a sequence for when the mobileterminal 102 performs a login request to the MFP 101 according to thesecond embodiment. With reference to FIG. 16 , explanation is given of ausage approach for the characteristics of the user authenticationservice according to the second embodiment. Note that basic operation ofthe mobile terminal 102 here is similar to FIG. 7 according to the firstembodiment.

Upon starting the login request processing of step S705, the mobileterminal 102 issues a Read request for the Challenge 1501 in step S1601,and in step S1602 obtains a value of the challenge. Next, in step S1603the mobile terminal 102 uses the obtained challenge and the user'spassword to calculate a hash value. As an algorithm to generate thechallenge and calculate the hash value here, there is theChallenge-Response Authentication Mechanism (CRAM) as recited in RFC2195 or the like, but the present invention is not limited to this. Nextin step S1604 the mobile terminal 102 writes the user name to theUserName 506 and writes the calculated hash value to the Hash 1502, andalso writes the login request to the RequestID 508. Thereby, the MFP 101detects this login request, and reads the user name, hash value, andchallenge from the characteristics. After reading these values, thesevalues are cleared so that they cannot be referenced when anotherterminal accesses. Then in step S1605 the MFP 101 uses the user name,hash value, and challenge obtained from the characteristics to performuser authentication processing. More specifically, the challenge set inthe characteristic and the user password registered in the user databaseare obtained, and a hash value is calculated by using the same algorithmas the mobile terminal 102. Then that calculated hash value and the hashvalue obtained from the characteristic are verified. When the MFP 101thus completes authentication of the user, in preparation for subsequentauthentication, the MFP 101 updates the challenge of the characteristicwith a new value. Thereafter, operation after user authentication issimilar to in the first embodiment.

By the second embodiment, as explained above, a challenge-responsescheme user authentication via Bluetooth is implemented, which is moresecure than in the first embodiment, and a effect of being able toprevent an improper obtainment of a password via packet sniffing or MFPspoofing is obtained.

Third Embodiment

In the previously described first embodiment, regarding the manuallogout of step S1206-step S1211 of FIG. 12 , by configuring so as to notaccept anything besides the login request level 3 immediately after themanual logout, a problem occurring immediately after the logout issolved.

A method according to the third embodiment by which the same effect isobtained is shown in FIG. 17 . Note that a configuration of the mobileterminals 102, 103 or the MFP 101 according to the third embodiment, anda system configuration thereof are similar to those of the previouslydescribed first embodiment, and explanation thereof is omitted.

FIG. 17 is a flowchart for describing manual logout processing by theMFP 101 according to the third embodiment. Note that inasmuch as it isnot mentioned particularly, the CPU 201 is the subject of operation ofthe MFP 101. Inasmuch as it is not mentioned particularly, the softwaresubject is the login service 312 or the platform 301 performs substituteprocessing when the login service 312 calls an API provided by theplatform 301.

Firstly, in step S1701, the CPU 201 detects a press of the logout button410, logout processing is performed. Next, the processing proceeds tostep S1702 and the CPU 201 stops output of Bluetooth AdvertisingPackets. Next, the processing proceeds to step S1703 and the CPU 201activates the timer 223 to check the elapse of time. Then the processingproceeds to step S1704, and the CPU 201 causes a transition of thedisplay of the console unit 205 to the login screen. At this point, astate in which login using keyboard, login using IC card, and login thatuses a login request level 3 from Bluetooth are possible is entered.Thereafter, in step S1705 when the CPU 201 detects the passing of apredetermined time period (for example, 10 seconds) by the timer 223,and there was no login request in the predetermined time period, theprocessing proceeds to step S1706. In step S1706, after a manual logout,the CPU 201 resumes output of the Advertising Packet after thepredetermined time period has elapsed.

Thereby, while the MFP 101 stops output of the Advertising Packet, themobile terminal 102 cannot detect the distance to the MFP 101. Thereby,when the MFP 101 is executing manual operation logout processing, themobile terminal 102 can be prevented from making the login request tothe MFP 101.

Fourth Embodiment

The above described first to third embodiments illustrate examples inwhich the mobile terminal 102 confirms the permission/prohibition statefor login to the MFP 101, and determines whether or not to perform thelogin request. For example, the determination of step S704 of FIG. 7corresponds to this. In contrast to this, the fourth embodimentillustrates an example of a case in which the mobile terminal 102 doesnot perform determining of login permission/prohibition, but entruststhe determination of login permission/prohibition to the MFP 101. Notethat a configuration of the mobile terminals 102, 103 or the MFP 101according to the fourth embodiment, and a system configuration thereofare similar to those of the previously described first embodiment, andexplanation thereof is omitted.

FIG. 18A and FIG. 18B depict views for describing characteristicsprovided by user authentication services of the MFP 101 according to thefourth embodiment of the present invention. Portions here in common withthe previously described FIG. 5 and FIG. 15 are denoted with the samenumerals, and explanation thereof is omitted. The user authenticationservices of the MFP 101 according to the fourth embodiment is providedwith a Distance 1801 and a Distance 1802 in which to write a distancecalculated by the mobile terminal 102, in addition to thecharacteristics of the above described first embodiment and secondembodiment. Regarding the login request, there is no need for the levels(level 1 to level 3) as shown in the previously described firstembodiment, and one RequestID that indicates the login request is used.Note that the MFP 101 according to the fourth embodiment is assumed tobe something that stores in advance a list of loginpermission/prohibition states of the fourth embodiment as shown in thefollowing TABLE 11 as a setting.

TABLE 11 LIST OF LOGIN PERMISSION/PROHIBITION STATES STATUSID MEANING 1LOGIN IS POSSIBLE 2 LOGIN REQUEST FROM A MOBILE TERMINAL AT A DISTANCEOF 2 m TO 30 cm IS NOT ACCEPTED BECAUSE ANOTHER USER IS LOGGED IN. 3LOGIN REQUEST FROM A MOBILE TERMINAL AT A DISTANCE OF 2 m TO 10 cm ISNOT ACCEPTED BECAUSE IMMEDIATELY AFTER A LOGOUT

Operation of the mobile terminal 102 according to the fourth embodimentis the same as that explained with the flowchart of FIG. 6 of thepreviously described first embodiment, so explanation thereof isomitted.

FIG. 19 is a flowchart for describing detail of processing of step S608of FIG. 6 according to the fourth embodiment. With reference to FIG. 19, explanation is given of a detailed flow of step S608 in the fourthembodiment.

When the CPU 211 of the mobile terminal 102 starts processing for usingthe MFP 101, firstly in step S1901 the CPU 211 connects via Bluetooth tothe MFP 101. Next, the processing proceeds to step S1902 and the CPU 211obtains Bluetooth service information from the MFP 101. In the fourthembodiment, at this point in time it is possible to obtain informationof the user authentication service 501 and the MFP information service502. Next, the processing proceeds to step S1903, and the CPU 211 issuesa login request to the MFP 101. In the fourth embodiment, at a time ofthis login request, the distance to the MFP 101 that the CPU 211 of themobile terminal 102 calculates is written to Distance (1801 or 1802).Next, the processing proceeds to step S1904, and the CPU 211 receives bya Notification an update of the ResultID and the StatusID as a result ofthe login processing from the MFP 101.

In step S1905, the CPU 211 determines success/failure of the login fromthe received result. Then if it is determined that the login succeededhere, the processing proceeds to step S1906, and the CPU 211 disconnectsthe connection via Bluetooth with the MFP 101, and this processingterminates.

Meanwhile, if in step S1905 the CPU 211 determines that the loginfailed, the processing proceeds to step S1907, and the CPU 211 presentsusable functions as the substitution functions to the user instead oflocal login to the MFP 101. This is similar to the previously describedFIG. 8 . Next the processing proceeds to step S1908, and the CPU 211determines whether or not the user has selected a substitution function.Here, if the user did not select a substitution function but pressed thecancel button 804, the processing proceeds to step S1906, and the CPU211 disconnects the connection via Bluetooth with the MFP 101, andterminates this processing. Meanwhile, if in step S1908 the CPU 211determines that the user selected a substitution function, theprocessing proceeds to step S1909, and as explained with reference tothe flowchart of the previously described FIG. 9 , the substitutionfunction selected by the user is provided to the user. After provisionof the substitution function, the processing proceeds to step S1906, andthe CPU 211 disconnects the unnecessary connection via Bluetooth to theMFP 101, and this processing terminates.

FIGS. 20A and 20B are flowcharts for describing operation of local loginprocessing in the MFP 101 according to the fourth embodiment. Note thatin FIGS. 20A and 20B, processing that is the same processing of thepreviously explained FIG. 11 is given the same numeral, and explanationthereof is omitted. In the previously described first embodiment, theMFP 101, having receiving the login request, in step S1110 of FIG. 11compares the login request level and the login permission/prohibitionstate and determines whether the login request level is a level that canbe accepted.

In contrast to this, when the CPU 201 of the MFP 101 according to thefourth embodiment detects the login request from the mobile terminal102, the processing proceeds to step S2001, and the CPU 201 obtainsdistance information written in the Distance (1801, 1802). Next, theprocessing proceeds to step S2002, and the CPU 201 refers to the list oflogin permission/prohibition states of the fourth embodiment (TABLE 11),and then determines whether or not the distance between the mobileterminal 102 and the MFP 101 is a distance at which the login request isaccepted. For example, if the obtained distance is between 2 m and 30cm, from TABLE 11, when the login permission/prohibition state is notthe value “1” that shows that login is possible but shows “2” or “3”, itis determined that login is not possible, and the login processing iscancelled. For example, if the obtained distance is between 30 cm and 10cm, if the login permission/prohibition state shows “3”, then it isdetermined that login is not possible, and the login processing iscancelled. When the login processing is cancelled, a value “3” thatindicates that the login was cancelled is set to the ResultID, and instep S2003 the result is communicated to the mobile terminal 102.

According to the fourth embodiment as explained above, because themobile terminal 102 does not need to perform determination or processingin accordance with the distance to the MFP 101, there is the effect thatprocessing of the mobile terminal 102 can be simplified.

Fifth Embodiment

Next, explanation is given of a fifth embodiment of the presentinvention. In the previously described first to fourth embodiments, theMFP 101 transmits an advertisement packet, and the mobile terminal 102receives this and obtains the distance between the MFP 101 and themobile terminal 102. In contrast to this, in the fifth embodimentexplanation is given of an example in which the mobile terminal 102transmits the advertisement packet, and the MFP 101 receives this, andthe MFP 101 obtains the distance between the MFP 101 and the mobileterminal 102. Note that while explanation is given of processing betweenthe mobile terminal 102 and the MFP 101, of course the same can beperformed in the case of the mobile terminal 103 as in the previouslydescribed embodiments.

FIG. 21 is a block diagram for explaining a hardware configuration ofthe MFP 101 according to the fifth embodiment of the present invention.Note that the hardware configuration of the mobile terminal 102 and theconfiguration of the system that includes the MFP 101 and the mobileterminal 102 are similar to the previously described first embodiment,so explanation thereof is omitted. Because the MFP 101 according to thefifth embodiment is basically the same as the MFP 101 according topreviously described embodiments, portions in common with the previouslydescribed FIG. 2 are denoted with the same reference numerals, andexplanation thereof is omitted.

Configuration of a control unit 2100 of the MFP 101 is as below. Via asystem bus 2114, the CPU 201, the RAM 203, the ROM 202, an SRAM 2101,the network interface 210, an RIP 2103, a scanner image processor 2104,a printer image processor 2105, and a storage controller 2108 areconnected. The CPU 201 is connected to the console unit 205 via a UARTinterface 2102, and connected to a Bluetooth module 2113 of the consoleunit 205 via a USB interface 2109 and a USB connector 2110. The scannerimage processor 2104 receives, via a scanner I/F 2106, the image dataobtained by reading the original using the scanner 207, performs imageprocessing, and then outputs to the system bus 2114. The printer imageprocessor 2105, after performing color conversion or the like, inaccordance with characteristics of the printer 206, on image datareceived via the system bus 2114, outputs the image data to the printer206 via a printer I/F 2107 to cause it to be printed. The storagecontroller 2108 controls access to the HDD 204. The CPU 201 executesprocessing explained later by executing a boot program stored in the ROM202 to load an OS, a program, or the like, installed in the HDD 204 intothe RAM 203 and executing.

Next, explanation is given of the configuration of the console unit 205.

A sub-CPU 2111 controls operation of the console unit 205. A displaypanel 2112, as a display panel that comprises a touch panel function,accepts a user operation, and then notifies the sub-CPU 2111. A ROM 2115stores programs executed by the sub-CPU 2111, various data, or the like.A RAM 2116 provides a work area that stores various data at a time ofexecution of processing by the sub-CPU 2111. The Bluetooth module 2113communicates in accordance with a Bluetooth specification with theBluetooth I/F 215 of the mobile terminal 102.

Based on the above configuration, operation of the MFP 101 is explainedsimply. PDL data, which is print data transmitted via the LAN 104, isreceived by the network interface 210. The CPU 201 temporarily writesthe received PDL data to the RAM 203, and then stores it in the HDD 204via the storage controller 2108. The PDL data stored in the HDD 204 isconverted by the CPU 201 to a display list, and once again written tothe HDD 204 via the RAM 203. Next the display list of the HDD 204 isread by the CPU 201, sent to the RIP 2103, converted to raster data, andonce again written to the HDD 204. In this way, a print job input to theMFP 101 is printed by the printer 206 by the user logging into the MFP101 via a login method explained later. Upon this printing, the rasterdata is read from the HDD 204 via the system bus 2114, and afterdensity, screen processing, or the like is performed on it by theprinter image processor 2105, it is output to the printer 206 via theprinter I/F 2107.

Next, a procedure by which the user logs into the MFP 101 is explained.

The CPU 201 controls the Bluetooth module 2113 via the USB connector2110. More specifically, an Advertising Packet of a Bluetooth Low Energycommunication transmitted from the mobile terminal 102 is received, anda service is executing in response to a login request, a print jobinput, or the like from the mobile terminal 102. By authentication onthe MFP 101 by the mobile terminal 102 that the user possesses, the usercan not only execute the print job, but can also cause a transition ofthe operation screen of the MFP 101 to an operation menu screen or thelike, and obtain authorization to use the MFP 101.

Next, explanation is given of communication processing with the mobileterminal 102 by the MFP 101 according to the fifth embodiment.

FIGS. 22A and 22B are flowcharts for describing processing from allowinga user of the mobile terminal 102 to login upon a signal from the mobileterminal 102 to the MFP 101, until logout according to the fifthembodiment. Note that the program that executes this processing isstored in the HDD 204, and is deployed into the RAM 203 and executed bythe CPU 201 at a time of execution.

In the fifth embodiment, the MFP 101 and the mobile terminal 102 use aBluetooth Low Energy communication standard to mutually communicate.Here, a service requested of the MFP 101 by the mobile terminal 102includes control so as to automatically log in in accordance with a userID transmitted from the mobile terminal 102, which is located within apredetermined distance from the MFP 101, and automatically logout whenthey become further apart than a predetermined distance.

Firstly in step S2201, the CPU 201 transitions to a standby state ofBluetooth Low Energy. Next the processing proceeds to step S2202, andthe CPU 201 determines whether or not the state is such thatauthentication of the user is possible. If authentication of the user ispossible, the processing proceeds to step S2203, otherwise userauthentication becoming possible is waited for, and then the processingproceeds to step S2203. In step S2203, the CPU 201 determines whether ornot the service for which the request from the mobile terminal 102 wasreceived is set so that authentication processing is possible. If it isnot set, the processing proceeds to step S2204, the administrator isprompted so as to set that authentication can be performed, and theprocessing proceeds to step S2203. Thus, if in step S2203 the servicefor which the request from the mobile terminal 102 was received isalready set, the processing proceeds to step S2205, and the CPU 201determines whether or not a distance that is a criterion of logging inis set. If it is determined that it is not set, the processing proceedsto step S2206, and the administrator of the MFP 101 is allowed to set itby prompting the administrator to set the distance. Thus, when thedistance, which is a condition for connecting to the transmission sourceof the received Bluetooth Advertising Packet, is set in the MFP 101, theprocessing proceeds to step S2207. In step S2207, the CPU 201transitions to a scanning state, and enters a wait to receive theAdvertising Packet. If in step S2208 the CPU 201 receives theAdvertising Packet, the processing proceeds to step S2209, and thereceived Advertising Packet is analyzed. Here the CPU 201 obtains adistance from the transmission source, a service UUID, and a user ID.The processing proceeds to step S2210, and the CPU 201 determineswhether or not the distance from the transmission source of the receivedAdvertising Packet is within the value set in step S2205. If determinedto he within the set value, the processing proceeds to step S2211,otherwise the processing proceeds to step S2208. Configuration may betaken such that the set distance is changed in accordance with the userID. In other words, as explained in the first embodiment, configurationmay be taken to set the distance of a user A who always worksneighboring the MFP 101 as for example 30 cm, and to set the distancefor other users as for example, 2 m. Accordingly, in such a case, instep S2210, it is determined whether or not it is within a connectiondistance in accordance with the user ID. In step S2211 the CPU 201determines whether or not the service UUID recited in the receivedAdvertising Packet is for a service that is set to the MFP 101 and canbe supported, and in such a case determines whether or not it is arequest for an authentication service. In such a case, the processingproceeds to step S2212; otherwise the processing proceeds to step S2208.

In step S2212, the CPU 201 transitions to an Init state, the processingproceeds to step S2213, and the CPU 201 transmits a Connect Req(connection request) packet to the mobile terminal 102 that transmittedthe Advertising Packet. In step S2214, when the Connect Req (connectionrequest) packet is received from the mobile terminal 102, the processingproceeds to step S2215. In step S2215, the CPU 201 executes loginprocessing with the user ID requested from the mobile terminal 102.Here, the list of user information of the previously described TABLE 1is referred to, and whether to permit login of the user is determined.The processing proceeds to step S2216, and the CPU 201 makes anotification of authentication success or authentication failure, whichis the result of the login processing, to the mobile terminal 102. Next,the processing proceeds to step S2217 and the CPU 201, similarly to instep S2207, transitions to the scanning state, in step S2218 waits forreception of the Advertising Packet; when the Advertising Packet isreceived, the processing proceeds to step S2219. In step S2219, the CPU201, similarly to in step S2209, analyzes the received the AdvertisingPacket, and obtains the distance from the transmission source, theservice UUID, and obtains the user ID. Next the processing proceeds tostep S2220, and the CPU 201 determines whether or not it is the distanceat which to logout. If in step S2220, the CPU 201 determines that thetransmission source of the Advertising Packet received in step S2218 isthe same as the logged-in user ID, and is at a predetermined distance orgreater, then the processing proceeds to step S2221. In step S2221, theCPU 201 logs out the user of the mobile terminal 102 and the processingreturns to step S2201.

In this way, the user of the mobile terminal 102, by simply approachingthe MFP 101 to a distance set in advance in a state of holding themobile terminal 102, it is possible to log in to the MFP 101. Here, theuser information that is authenticated, the service UUID that can beaccepted, and the distance to the transmission source at which login ispossible are registered in the MFP 101 in advance.

Next, explanation is given of operation in the mobile terminal 102according to the fifth embodiment.

FIG. 23 is a flowchart for describing processing by which the mobileterminal 102 logs into the MFP 101 according to the fifth embodiment.Note that the program that executes this processing is stored in theflash memory 213, and is deployed into the RAM 212 and executed by theCPU 211 at a time of execution.

Firstly, in step S2301, the CPU 211 activates an application stored inthe mobile terminal 102. The activation of this application is performedby the user operating the mobile terminal 102. Next, the processingproceeds to step S2302 and the CPU 211 determines whether or not theuser ID for logging in to the MFP 101 has been set. Here, if it isdetermined that the user ID has not been set, the processing proceeds tostep S2303, the CPU 211 prompts the user to set the user ID for whichauthentication is desired in the mobile terminal 102, and the processingproceeds to step S2302. Thus, if a state in which the user ID has beenset is entered, the processing proceeds to step S2304, and the CPU 211determines whether or not the service UUID to request of the MFP 101 hasbeen set, which here is whether a request of the authentication serviceof the MFP 101 has been set. If it is determined that it is not set, theCPU 211 advances the processing to step S2305, prompts the user of themobile terminal 102 to set the service UUID, and then the processingproceeds to step S2304. Thus, if in step S2304 a state in which theservice ID is set is entered, the processing proceeds to step S2306, andthe CPU 211 transitions to a state of transmitting the AdvertisingPacket.

Next, the processing proceeds to step S2307, and the CPU 211 waits forreception of a Connect Req packet from the MFP 101; when the Connect Reqpacket is received, the processing proceeds to step S2308, and the CPU211 transitions to a state of connection to the MFP 101. The processingproceeds to step S2309, the CPU 211 transmits the Connect Req packet tothe MFP 101, advances the processing to step S2310, and waits forreception of the authentication result of whether the login processingsucceeded. When the authentication result is received in step S2310, theprocessing proceeds to step S2311 and detail of the result is displayedon the console unit 214 of the mobile terminal 102. Here, ifauthentication succeeded, for example “logged in” is displayed, and ifauthentication failed “login failed” or the like is displayed. Theprocessing proceeds to step S2312, the CPU 211 transitions to anadvertizing state, and the processing proceeds to step S2307.

In this way the user of the mobile terminal 102 can execute processingto log in to the MFP 101 by using the user ID set in the mobile terminal102, simply by causing the mobile terminal 102 to approach the MFP 101.

Other Embodiments

Embodiments of the present invention can also be realized by a computerof a system or apparatus that reads out and executes computer executableinstructions (e. g., one or more programs) recorded on a storage medium(which may also be referred to more fully as a ‘non-transitorycomputer-readable storage medium’) to perform the functions of one ormore of the above-described embodiments and/or that includes one or morecircuits (e. g., application specific integrated circuit (ASIC)) forperforming the functions of one or more of the above-describedembodiments, and by a method performed by the computer of the system orapparatus by, for example, reading out and executing the computerexecutable instructions from the storage medium to perform the functionsof one or more of the above-described embodiments and/or controlling theone or more circuits to perform the functions of one or more of theabove-described embodiments. The computer may comprise one or moreprocessors (e. g., central processing unit (CPU), micro processing unit(MPU)) and may include a network of separate computers or separateprocessors to read out and execute the computer executable instructions.The computer executable instructions may be provided to the computer,for example, from a network or the storage medium. The storage mediummay include, for example, one or more of a hard disk, a random-accessmemory (RAM), a read only memory (ROM), a storage of distributedcomputing systems, an optical disk (such as a compact disc (CD), digitalversatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, amemory card, and the like.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims the benefit of Japanese Patent Application No.2014-194300, filed Sep. 24, 2014. which is hereby incorporated byreference herein in its entirety.

The invention claimed is:
 1. A method of controlling a terminal forreceiving a signal of a Bluetooth Low Energy (BLE) standard, the methodcomprising: receiving a Bluetooth Low Energy signal transmitted from anapparatus; obtaining status information of the apparatus based on thereceived Bluetooth Low Energy signal, the status information includinginformation indicating whether a user has logged into the apparatus;transmitting, to the apparatus, a request for causing a user to log outfrom the apparatus in a case that the received radio field intensity ofthe Bluetooth Low Energy signal transmitted from the apparatus is lessthan a predetermined intensity; and controlling whether or not totransmit, to the apparatus, the request for causing the user to log outfrom the apparatus based on the status information of the apparatusincluded in the received Bluetooth Low Energy signal.
 2. The methodaccording to claim 1, wherein the request for causing the user to logout is a request for causing a user of the terminal to log out from theapparatus.
 3. The method according to claim 1, further comprising:controlling whether or not to transmit, to the apparatus, a loginrequest for causing a user to log into the apparatus based on the statusinformation of the apparatus included in the received Bluetooth LowEnergy signal.
 4. The method according to claim 1, wherein thepredetermined intensity is set on the terminal.
 5. The method accordingto claim 1, wherein the request for causing the user to log out istransmitted with a Bluetooth Low Energy communication.
 6. The methodaccording to claim 1, wherein the apparatus stops transmitting, to theterminal, the Bluetooth Low Energy signal for a predetermined timeperiod when logging out the user from the apparatus.
 7. The methodaccording to claim 1, wherein the apparatus causes the user to log outfrom the apparatus in a case that user identification informationincluded in the request for causing the user to log out corresponds touser identification information of a user who has logged into theapparatus when the apparatus receives the request; and wherein theapparatus causes the user not to log out from the apparatus in a casethat the user identification information included in the request doesnot correspond to the user identification information of the user whohas logged into the apparatus when the apparatus receives the request.8. The method according to claim 1, wherein, in a case that the receivedradio field intensity of the Bluetooth Low Energy signal transmittedfrom the apparatus is less than the predetermined intensity, in thecontrolling: the request for causing the user to log out is transmittedin a case that the status information indicates that a user has loggedinto the apparatus; and the request for causing the user to log out isnot transmitted in a case that the status information indicates that auser has not logged into the apparatus.
 9. The method according to claim1, further comprising: transmitting, to the apparatus, a login requestfor causing a user to log into the apparatus in a case that the receivedradio field intensity of the Bluetooth Low Energy signal transmittedfrom the apparatus is greater than a predetermined intensity.
 10. Anon-transitory computer-readable storage medium storing a program forcausing a processor to execute a method of controlling a terminal thatcommunicates using a communication of Bluetooth Low Energy (BLE), themethod comprising: receiving a Bluetooth Low Energy signal transmittedfrom an apparatus; obtaining status information of the apparatus basedon the received Bluetooth Low Energy signal, the status informationincluding information indicating whether a user has logged into theapparatus; transmitting, to the apparatus, a request for causing a userto log out from the apparatus in a case that the received radio fieldintensity of the Bluetooth Low Energy signal transmitted from theapparatus is less than a predetermined intensity; and controllingwhether or not to transmit, to the apparatus, the request for causingthe user to log out from the apparatus based on the status informationof the apparatus included in the received Bluetooth Low Energy signal.11. A terminal for receiving a signal of a Bluetooth Low Energy (BLE)standard, the terminal comprising: at least one processor and at leastone memory coupled to the at least one processor and having storedthereon instructions that, when executed by the at least one processor,cause the at least one processor to: receive a Bluetooth Low Energysignal transmitted from an apparatus; obtain status information of theapparatus based on the received Bluetooth Low Energy signal, the statusinformation including information indicating whether a user has loggedinto the apparatus; transmit, to the apparatus, a request for causing auser to log out from the apparatus in a case that the received radiofield intensity of the Bluetooth Low Energy signal transmitted from theapparatus is less than a predetermined intensity; and controllingwhether or not to transmit, to the apparatus, the request for causingthe user to log out from the apparatus based on the status informationof the apparatus included in the received Bluetooth Low Energy signal.